/**
 * 自动生成！请勿修改！
 */
import { command } from '../core/command';

class SmartAquarium {
    static categoryCode = '010090014';

    static categoryName = '智能鱼缸';

    device = {};

    opts = {};

    _to = undefined;

    constructor(opt = {}) {
        const { device, to, ...opts } = opt;

        this.device = device;
        this.opts = opts;
        this._to = to;
    }

    get categoryCode() {
        return SmartAquarium.categoryCode;
    }

    get categoryName() {
        return SmartAquarium.categoryName;
    }

    getAutomaticFeedFrequency(params) {
        return command({
            method: 'getAutomaticFeedFrequency',
            methodId: 'pXZuwe9L',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getAutomaticFeedSwitch(params) {
        return command({
            method: 'getAutomaticFeedSwitch',
            methodId: 'pBTmAgmZ',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getCurrentWaterTemperature(params) {
        return command({
            method: 'getCurrentWaterTemperature',
            methodId: 'UmavvC8b',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getFeedAmount(params) {
        return command({
            method: 'getFeedAmount',
            methodId: 'pj7256oS',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getFeedRecord(params) {
        return command({
            method: 'getFeedRecord',
            methodId: 'pNnZMQiV',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getFeedStatus(params) {
        return command({
            method: 'getFeedStatus',
            methodId: 'pqYwsBt3',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getLightBrightness(params) {
        return command({
            method: 'getLightBrightness',
            methodId: 'pz93VW3r',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getLightColorTemperature(params) {
        return command({
            method: 'getLightColorTemperature',
            methodId: 'p0crZzrd',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getLightMode(params) {
        return command({
            method: 'getLightMode',
            methodId: 'UCb2TTeI',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getLightSwitch(params) {
        return command({
            method: 'getLightSwitch',
            methodId: 'pkpD2RDA',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getO2(params) {
        return command({
            method: 'getO2',
            methodId: 'U8OTlZzo',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getPH(params) {
        return command({
            method: 'getPH',
            methodId: 'URPjnLqR',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getRemainFood(params) {
        return command({
            method: 'getRemainFood',
            methodId: 'pWG0chBG',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getSwitch(params) {
        return command({
            method: 'getSwitch',
            methodId: 'p3deYoeC',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getTDS(params) {
        return command({
            method: 'getTDS',
            methodId: 'UvxDPdK1',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getTargetTemperature(params) {
        return command({
            method: 'getTargetTemperature',
            methodId: 'UnfcJU4x',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getWaterPumpGear(params) {
        return command({
            method: 'getWaterPumpGear',
            methodId: 'UODlCrUk',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    getWaterPumpSwitch(params) {
        return command({
            method: 'getWaterPumpSwitch',
            methodId: 'UaMCyALq',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setAutomaticFeedFrequency(params) {
        return command({
            method: 'setAutomaticFeedFrequency',
            methodId: 'pDrhrHK5',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setAutomaticFeedSwitch(params) {
        return command({
            method: 'setAutomaticFeedSwitch',
            methodId: 'p1vZLiUl',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setFeedAmount(params) {
        return command({
            method: 'setFeedAmount',
            methodId: 'pgh0Uvzm',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setLightBrightness(params) {
        return command({
            method: 'setLightBrightness',
            methodId: 'pUPQDO4n',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setLightColorTemperature(params) {
        return command({
            method: 'setLightColorTemperature',
            methodId: 'pZgubjbM',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setLightMode(params) {
        return command({
            method: 'setLightMode',
            methodId: 'U5s98N7z',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setLightSwitch(params) {
        return command({
            method: 'setLightSwitch',
            methodId: 'ppAr4CB9',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setManualFeed(params) {
        return command({
            method: 'setManualFeed',
            methodId: 'pGox3yLK',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setSwitch(params) {
        return command({
            method: 'setSwitch',
            methodId: 'peH3eUtE',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setTargetTemperature(params) {
        return command({
            method: 'setTargetTemperature',
            methodId: 'phEcQNNP',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setWaterPumpGear(params) {
        return command({
            method: 'setWaterPumpGear',
            methodId: 'pdNCu17U',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }

    setWaterPumpSwitch(params) {
        return command({
            method: 'setWaterPumpSwitch',
            methodId: 'ptRSgkOw',
            params,
            to: this.to?.[this.i] || this.to,
        });
    }
}

export default SmartAquarium;
